package com.ssd.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 活动状态枚举类
 * 用于定义活动的各种状态，包括待生效、进行中、已失效和作废
 */
@AllArgsConstructor
@Getter
public enum ActivityStatusEnum {
    /** 待生效状态 */
    NO_DISTRIBUTE(1, "待生效"),
    /** 进行中状态 */
    DISTRIBUTING(2, "进行中"),
    /** 已失效状态 */
    LOSE_EFFICACY(3, "已失效"),
    /** 作废状态 */
    VOIDED(4, "作废");

    /** 状态码 */
    private int status;
    /** 状态名称 */
    private String name;

    /**
     * 检查当前枚举的状态是否等于给定的状态码
     * 此方法用于比较枚举的状态值与给定的整数状态码是否相等
     *
     * @param status 待比较的状态码
     * @return 如果枚举状态等于给定状态码，则返回true；否则返回false
     */
    public boolean equals(Integer status) {
        return status != null && this.status == status;
    }
}

